﻿using LiveChartsCore.SkiaSharpView.Painting;
using SkiaSharp;

namespace YY.Admin.Core.LiveCharts2
{
    public class CusSolidColorPaint : SolidColorPaint
    {

        /// <summary>
        /// Gets or sets the font weight.
        /// </summary>
        public SKFontStyleWeight FontWeight { get; set; } = SKFontStyleWeight.Normal;

        /// <summary>
        /// Gets or sets the font width.
        /// </summary>
        public SKFontStyleWidth FontWidth { get; set; } = SKFontStyleWidth.Normal;

        /// <summary>
        /// Gets or sets the font slant.
        /// </summary>
        public SKFontStyleSlant FontSlant { get; set; } = SKFontStyleSlant.Upright;

        /// <summary>
        /// Gets or sets a character to match the typeface to use.
        /// </summary>
        public string? TypefaceMatchesChar { get; set; } = null;


        public String? CusColor { get; set; }  

        /// <summary>
        /// Initializes a new instance of the <see cref="SolidColorPaint"/> class.
        /// </summary>
        public CusSolidColorPaint()
            : base()
        { }

        /// <summary>
        /// Initializes a new instance of the <see cref="SolidColorPaint"/> class.
        /// </summary>
        /// <param name="color">The color.</param>
        public CusSolidColorPaint(SKColor color)
            : base(color)
        {
            Color = color;
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="SolidColorPaint"/> class.
        /// </summary>
        /// <param name="color">The color.</param>
        /// <param name="strokeWidth">Width of the stroke.</param>
        public CusSolidColorPaint(SKColor color, float strokeWidth)
            : base(color, strokeWidth)
        {
            Color = color;
        }
    }
}
